#include <fstream>
#include <vector>
#include <string>
#include <complex>
#include <cmath>
#include <algorithm>
#include <opencv2/opencv.hpp>

using namespace cv;
//////////////////////////////////////////////////////////////////////////
Mat fft2(Mat mask, Mat src);
//////////////////////////////////////////////////////////////////////////
Mat ift2(Mat mask, Mat src);
//////////////////////////////////////////////////////////////////////////
double f2norm(Mat mask, Mat T, Mat S);
//////////////////////////////////////////////////////////////////////////
double f1norm_tv(Mat src);
//////////////////////////////////////////////////////////////////////////
Mat g2norm(Mat mask, Mat T, Mat S);
//////////////////////////////////////////////////////////////////////////
Mat g1norm_tv(Mat src);